using System;
using System.Drawing;

namespace CubeTimer
{
  internal class HighlightedDate
  {
    public Color BackgroundColor;
    public Boolean Bold;
    public Color BoxColor;
    public DateTime Date;
    public Color DateColor;
    public Point Position = new Point(0, 0);

    // This constructor is used if you only want to make dates bold. All colors are set to "Empty"(null color)
    public HighlightedDate(DateTime date)
    {
      Date = date;
      DateColor = BoxColor = BackgroundColor = Color.Empty;
      Bold = true;
    }

    // This constructor is used if you want colored and/or bolded dates
    public HighlightedDate(DateTime date, bool enabled)
    {
      Date = DateTime.Parse(date.ToShortDateString());
      if (enabled)
      {
        Bold = true;
        DateColor = Color.Green;
      }
      else
      {
        DateColor = Color.Gray;
        Bold = false;
      }
      BoxColor = BackgroundColor = Color.Empty;
    }

    // This constructor is used if you want colored and/or bolded dates
    public HighlightedDate(DateTime date, Color dateColor, Boolean bold)
    {
      Date = date;
      DateColor = dateColor;
      BoxColor = BackgroundColor = Color.Empty;
      Bold = bold;
    }

    // This constructor is used when you want to control everything
    public HighlightedDate(DateTime date, Color dateColor, Color boxColor,
                            Color backgroundColor, Boolean bold)
    {
      Date = date;
      DateColor = dateColor;
      BoxColor = boxColor;
      BackgroundColor = backgroundColor;
      Bold = bold;
    }
  }
}